# 与门
# import numpy as np

# def AND(x1, x2):
#     x = np.array([x1, x2])     # 输入
#     w = np.array([0.5, 0.5]) # 权重
#     b = -0.7                 # 偏置
#     tmp = sum(x * w) + b
#     if tmp <= 0:
#         return 0
#     else:
#         return 1
    
# print(AND(0, 0))
# print(AND(0, 1))
# print(AND(1, 0))
# print(AND(1, 1))


# 与非门
# import numpy as np

# def NAND(x1, x2):
#     x = np.array([x1, x2])     # 输入
#     w = np.array([-0.5, -0.5]) # 权重
#     b = 0.7                 # 偏置
#     tmp = sum(x * w) + b
#     if tmp <= 0:
#         return 0
#     else:
#         return 1
    
# print(NAND(0, 0))
# print(NAND(0, 1))
# print(NAND(1, 0))
# print(NAND(1, 1))

# 或门
import numpy as np

def OR(x1, x2):
    x = np.array([x1, x2])     # 输入
    w = np.array([0.5, 0.5]) # 权重
    b = -0.4                 # 偏置
    tmp = sum(x * w) + b
    if tmp <= 0:
        return 0
    else:
        return 1
    
print(OR(0, 0))
print(OR(0, 1))
print(OR(1, 0))
print(OR(1, 1))